Java Technologies উদাহরণ সহ JSP তে MVC Pattern গাইড ও নোট

336

MVC Pattern (Model-View-Controller) একটি জনপ্রিয় আর্কিটেকচারাল প্যাটার্ন যা ওয়েব অ্যাপ্লিকেশন ডেভেলপমেন্টে ব্যবহৃত হয়। এই প্যাটার্নটি অ্যাপ্লিকেশনের বিভিন্ন কম্পোনেন্টকে তিনটি পৃথক অংশে বিভক্ত করে, যা মেইনটেনেন্স এবং স্কেলেবিলিটি উন্নত করে।

  • Model: অ্যাপ্লিকেশনের ডেটা এবং বিজনেস লজিক।
  • View: ইউজার ইন্টারফেস (UI), যেটি ইউজারের কাছে ডেটা প্রদর্শন করে।
  • Controller: ইউজার ইনপুট পরিচালনা করে এবং উপযুক্ত মডেল এবং ভিউকে যুক্ত করে।

JSP এবং সাভলেটের সাহায্যে MVC Pattern প্রয়োগ করা যেতে পারে। এখানে, JSP ফাইলগুলি View হিসেবে কাজ করে, সাভলেটগুলি Controller হিসেবে এবং JavaBeans বা অন্যান্য ক্লাসগুলি Model হিসেবে কাজ করে।

JSP তে MVC Pattern এর উদাহরণ


ধরা যাক, আমরা একটি লগইন সিস্টেম তৈরি করতে চাই, যেখানে ইউজারের ইনপুট গ্রহণ করা হবে, তারপর সেই ইনপুটের ভিত্তিতে ডেটাবেসের সাথে যোগাযোগ করা হবে এবং ফলাফল JSP পেজে প্রদর্শিত হবে।

১. Model - JavaBean (User.java)

এখানে আমরা JavaBean ব্যবহার করব যা মডেল হিসেবে কাজ করবে। এই ক্লাসটি ইউজারের তথ্য ধারণ করবে।

public class User {
    private String username;
    private String password;

    // Getter and Setter methods
    public String getUsername() {
        return username;
    }

    public void setUsername(String username) {
        this.username = username;
    }

    public String getPassword() {
        return password;
    }

    public void setPassword(String password) {
        this.password = password;
    }

    // Method to validate user
    public boolean validate() {
        return "admin".equals(username) && "password123".equals(password);
    }
}

ব্যাখ্যা:

  • এখানে User ক্লাসের মধ্যে ইউজারের নাম এবং পাসওয়ার্ড রয়েছে, এবং একটি validate() মেথড রয়েছে যা ইউজারের তথ্য যাচাই করে।

২. Controller - LoginServlet.java

LoginServlet একটি সাভলেট যা ইউজারের ইনপুট গ্রহণ করে এবং যাচাইয়ের জন্য মডেলকে কল করে। সাভলেটটি তারপর উপযুক্ত ভিউ (JSP) পেজে রিডিরেক্ট করবে।

import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;

public class LoginServlet extends HttpServlet {
    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        String username = request.getParameter("username");
        String password = request.getParameter("password");

        // Create User object and validate
        User user = new User();
        user.setUsername(username);
        user.setPassword(password);

        if (user.validate()) {
            // Redirect to success.jsp
            response.sendRedirect("success.jsp");
        } else {
            // Redirect to error.jsp
            response.sendRedirect("error.jsp");
        }
    }
}

ব্যাখ্যা:

  • doPost() মেথডে, সাভলেট ইউজারের ইনপুট গ্রহণ করে, এবং একটি User অবজেক্ট তৈরি করে।
  • ইউজারের তথ্য যাচাইয়ের জন্য user.validate() মেথড কল করা হয়। সফল হলে, ইউজারকে success.jsp পেজে রিডিরেক্ট করা হয়, অন্যথায় error.jsp পেজে রিডিরেক্ট করা হয়।

৩. View - success.jsp এবং error.jsp

success.jsp:

<html>
    <body>
        <h1>Login Successful!</h1>
    </body>
</html>

error.jsp:

<html>
    <body>
        <h1>Invalid Username or Password!</h1>
    </body>
</html>

ব্যাখ্যা:

  • যদি ইউজার সঠিকভাবে লগইন করে, তাকে success.jsp পেজে নিয়ে যাওয়া হয়।
  • যদি ইউজার ভুল পাসওয়ার্ড বা ইউজারনেম প্রদান করে, তাকে error.jsp পেজে রিডিরেক্ট করা হয়।

সারাংশ


  • Model: User.java ক্লাস ডেটা ধারণ করে এবং যাচাইয়ের জন্য মেথড প্রদান করে।
  • View: success.jsp এবং error.jsp পেজগুলি ইউজারের কাছে ফলাফল প্রদর্শন করে।
  • Controller: LoginServlet.java সাভলেটটি ইউজারের ইনপুট প্রক্রিয়া করে এবং সঠিক ভিউ পেজে রিডিরেক্ট করে।

এইভাবে, JSP তে MVC Pattern ব্যবহার করে একটি সিম্পল লগইন সিস্টেম তৈরি করা হয়েছে, যেখানে Model, View, এবং Controller এর প্রতিটি ভূমিকা আলাদা করা হয়েছে, যা কোডের সংগঠন এবং রক্ষণাবেক্ষণকে সহজ করে।

Content added By
Promotion

Are you sure to start over?

Loading...